package org.lboot.flow.model.node;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.util.List;


@EqualsAndHashCode(callSuper = true)
@Data
public class TaskModel extends BaseModel implements Serializable {
    /**
     * 参与方式（
     * RACE->任何一个参与者处理完即可执行下一步,
     * ALL->所有参与者都完成，才可执行下一步
     * CUSTOM -> 自定义规则
     * ）
     */
    private String performType;

    /**
     * 自定义通过判断规则，脚本表达式，
     * 传递的参数形式
     * ${
     *     pass:int
     *     all:int
     *     reject:int
     * }
     */
    private String customPassRule;

    // 自定义拒绝判断规则
    private String customRejectRule;

    /**
     * 期望完成时间（产生的任务期望啥时间完成）
     */
    private Integer expireTime;

    /**
     * 是否自动执行（如任务未处理且到期，是否自动执行）
     */
    private Boolean autoExecute;

    /**
     * 允许加签操作
     */
    private boolean enableAdd;

    /**
     * 允许回退操作
     */
    private boolean enableBack;
}
